home *** CD-ROM | disk | FTP | other *** search
/ Aminet 2 / Aminet AMIGA CDROM (1994)(Walnut Creek)[Feb 1994][W.O. 44790-1].iso / Aminet / comm / uucp / AM114src.lha / delete.c < prev    next >
C/C++ Source or Header  |  1992-04-18  |  1KB  |  60 lines

  1. /*
  2.  *
  3.  *  AM --- AmigaMail
  4.  *  (C) 1991, 1992 by Christian Riede
  5.  *
  6.  *  AM is distributed in the hope that it will be useful, but WITHOUT ANY
  7.  *  WARRANTY.  No author or distributor accepts responsibility to anyone
  8.  *  for the consequences of using it or for whether it serves any
  9.  *  particular purpose or works at all, unless he says so in writing.
  10.  *  Refer to the GNU General Public License, Version 1, for full details.
  11.  *  
  12.  *  Everyone is granted permission to copy, modify and redistribute AM,
  13.  *  but only under the conditions described in the GNU General Public
  14.  *  License, Version 1.  A copy of this license is supposed to have been 
  15.  *  given to you along with AM so you can know your rights and responsi-
  16.  *  bilities.  It should be in a file named COPYING.  Among other things,
  17.  *  the copyright notice and this notice must be preserved on all copies.
  18.  *
  19.  *  
  20.  *
  21.  */
  22.  
  23. #include "am.h"
  24.  
  25.  
  26. void DeleteMail(struct Mail *Mail)
  27. {
  28.     char dummy[160];
  29.  
  30.     if (!Mail) return;
  31.  
  32.     /* confirm delete */
  33.     if (TwoGadRequest(Window,"Really delete ?"))
  34.     {
  35.         /* build filename */
  36.         sprintf(dummy,"uumail:%s.mail/%ld",Username,Mail->Number);
  37.  
  38.         /* delete file */
  39.         if (!DeleteFile((UBYTE *)dummy))
  40.         {
  41.             SimpleRequest(Window,"Can't delete file");
  42.             return;
  43.         }
  44.  
  45.         /* delete item from selected list */
  46.         Remove(&(Mail->m_SelectNode));
  47.         
  48.         /* remove it from mailbox */
  49.         Remove(&(Mail->m_Node));
  50.  
  51.         /* tell server */
  52.         DeleteItem(Mail->Number);
  53.  
  54.         /* free it's memory */
  55.         FreeMail(Mail);
  56.  
  57.     }
  58.  
  59. }
  60.